\hypertarget{class_q_c_p_item_tracer}{}\section{Q\+C\+P\+Item\+Tracer Class Reference}
\label{class_q_c_p_item_tracer}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}


Item that sticks to \mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} data points.  


Inheritance diagram for Q\+C\+P\+Item\+Tracer\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=4.000000cm]{class_q_c_p_item_tracer}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style}} \{ \newline
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{ts\+None}}, 
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a3323fb04017146e4885e080a459472fa}{ts\+Plus}}, 
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}{ts\+Crosshair}}, 
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500ae2252c28f4842880d71e9f94e69de94e}{ts\+Circle}}, 
\newline
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}{ts\+Square}}
 \}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_q_c_p_item_tracer_adc5ca846eeac323db4aa1fc4081e36be}{Q\+C\+P\+Item\+Tracer}} (\mbox{\hyperlink{class_q_custom_plot}{Q\+Custom\+Plot}} $\ast$parent\+Plot)
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a789cdc627868f5a4a0956816072571c9}\label{class_q_c_p_item_tracer_a789cdc627868f5a4a0956816072571c9}} 
Q\+Pen {\bfseries pen} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_ad231a97bac99e01778618d1a5720b17d}\label{class_q_c_p_item_tracer_ad231a97bac99e01778618d1a5720b17d}} 
Q\+Pen {\bfseries selected\+Pen} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a6dd4660e70f58bb00390bcda56be568d}\label{class_q_c_p_item_tracer_a6dd4660e70f58bb00390bcda56be568d}} 
Q\+Brush {\bfseries brush} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_ae3e48270b4a6ec20f7a9e1f63e778243}\label{class_q_c_p_item_tracer_ae3e48270b4a6ec20f7a9e1f63e778243}} 
Q\+Brush {\bfseries selected\+Brush} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a4e42d7b49f293273a74a49a2457856e2}\label{class_q_c_p_item_tracer_a4e42d7b49f293273a74a49a2457856e2}} 
double {\bfseries size} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_afdaee32c9ccc9c14502b28d3d86bf5ed}\label{class_q_c_p_item_tracer_afdaee32c9ccc9c14502b28d3d86bf5ed}} 
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style}} {\bfseries style} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_ac6526e3e1fff79894f034823461b138a}\label{class_q_c_p_item_tracer_ac6526e3e1fff79894f034823461b138a}} 
\mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} $\ast$ {\bfseries graph} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_ac39a0791109588d11bb97cd643da2470}\label{class_q_c_p_item_tracer_ac39a0791109588d11bb97cd643da2470}} 
double {\bfseries graph\+Key} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_ae9ab6d72e0a35e1769c0b5a9b58181f2}\label{class_q_c_p_item_tracer_ae9ab6d72e0a35e1769c0b5a9b58181f2}} 
bool {\bfseries interpolating} () const
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{set\+Pen}} (const Q\+Pen \&pen)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}{set\+Selected\+Pen}} (const Q\+Pen \&pen)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{set\+Brush}} (const Q\+Brush \&brush)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}{set\+Selected\+Brush}} (const Q\+Brush \&brush)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}{set\+Size}} (double size)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{set\+Style}} (\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style}} style)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}} (\mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} $\ast$graph)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}} (double key)
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating}} (bool enabled)
\item 
virtual double \mbox{\hyperlink{class_q_c_p_item_tracer_ae1dc728384936184e7552a6d0d67fd75}{select\+Test}} (const Q\+PointF \&pos, bool only\+Selectable, Q\+Variant $\ast$details=0) const
\item 
void \mbox{\hyperlink{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}{update\+Position}} ()
\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a69917e2fdb2b3a929c196958feee7cbe}\label{class_q_c_p_item_tracer_a69917e2fdb2b3a929c196958feee7cbe}} 
\mbox{\hyperlink{class_q_c_p_item_position}{Q\+C\+P\+Item\+Position}} $\ast$const {\bfseries position}
\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_aaaf49b48382c730ec9be0e74c2538315}\label{class_q_c_p_item_tracer_aaaf49b48382c730ec9be0e74c2538315}} 
virtual void {\bfseries draw} (\mbox{\hyperlink{class_q_c_p_painter}{Q\+C\+P\+Painter}} $\ast$painter)
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_abffdcf64d0f84f7b41bd4af07d144642}\label{class_q_c_p_item_tracer_abffdcf64d0f84f7b41bd4af07d144642}} 
Q\+Pen {\bfseries main\+Pen} () const
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a94f81c54197577e86c53a60cf39155cd}\label{class_q_c_p_item_tracer_a94f81c54197577e86c53a60cf39155cd}} 
Q\+Brush {\bfseries main\+Brush} () const
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a579e3bd6bd16d6aaff03638dc8a99a69}\label{class_q_c_p_item_tracer_a579e3bd6bd16d6aaff03638dc8a99a69}} 
Q\+Pen {\bfseries m\+Pen}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a3f61829784200819661d1e2a5354d866}\label{class_q_c_p_item_tracer_a3f61829784200819661d1e2a5354d866}} 
Q\+Pen {\bfseries m\+Selected\+Pen}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a6597be63a17a266233941354200b2340}\label{class_q_c_p_item_tracer_a6597be63a17a266233941354200b2340}} 
Q\+Brush {\bfseries m\+Brush}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a1c15d2adde40efdcc0ef1ff78fd256a6}\label{class_q_c_p_item_tracer_a1c15d2adde40efdcc0ef1ff78fd256a6}} 
Q\+Brush {\bfseries m\+Selected\+Brush}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a575153a24bb357d1e006f6bc3bd099b9}\label{class_q_c_p_item_tracer_a575153a24bb357d1e006f6bc3bd099b9}} 
double {\bfseries m\+Size}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_afb1f236bebf417544e0138fef22a292e}\label{class_q_c_p_item_tracer_afb1f236bebf417544e0138fef22a292e}} 
\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Tracer\+Style}} {\bfseries m\+Style}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a2d70cf616b579563aa15f796dfc143ac}\label{class_q_c_p_item_tracer_a2d70cf616b579563aa15f796dfc143ac}} 
\mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} $\ast$ {\bfseries m\+Graph}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_a8fa20f2e9ee07d21fd7c8d30ba4702ca}\label{class_q_c_p_item_tracer_a8fa20f2e9ee07d21fd7c8d30ba4702ca}} 
double {\bfseries m\+Graph\+Key}
\item 
\mbox{\Hypertarget{class_q_c_p_item_tracer_afab37c22ad39f235921e86f93cd84595}\label{class_q_c_p_item_tracer_afab37c22ad39f235921e86f93cd84595}} 
bool {\bfseries m\+Interpolating}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Item that sticks to \mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} data points. 

 The tracer can be connected with a \mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} via \mbox{\hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}}. Then it will automatically adopt the coordinate axes of the graph and update its {\itshape position} to be on the graph\textquotesingle{}s data. This means the key stays controllable via \mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}}, but the value will follow the graph data. If a \mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} is connected, note that setting the coordinates of the tracer item directly via {\itshape position} will have no effect because they will be overriden in the next redraw (this is when the coordinate update happens).

If the specified key in \mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}} is outside the key bounds of the graph, the tracer will stay at the corresponding end of the graph.

With \mbox{\hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating}} you may specify whether the tracer may only stay exactly on data points or whether it interpolates data points linearly, if given a key that lies between two data points of the graph.

The tracer has different visual styles, see \mbox{\hyperlink{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{set\+Style}}. It is also possible to make the tracer have no own visual appearance (set the style to \mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{ts\+None}}), and just connect other item positions to the tracer {\itshape position} (used as an anchor) via \mbox{\hyperlink{class_q_c_p_item_position_ac094d67a95d2dceafa0d50b9db3a7e51}{Q\+C\+P\+Item\+Position\+::set\+Parent\+Anchor}}.

\begin{DoxyNote}{Note}
The tracer position is only automatically updated upon redraws. So when the data of the graph changes and immediately afterwards (without a redraw) the a position coordinates of the tracer are retrieved, they will not reflect the updated data of the graph. In this case \mbox{\hyperlink{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}{update\+Position}} must be called manually, prior to reading the tracer coordinates. 
\end{DoxyNote}


\subsection{Member Enumeration Documentation}
\mbox{\Hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!Tracer\+Style@{Tracer\+Style}}
\index{Tracer\+Style@{Tracer\+Style}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{Tracer\+Style}{TracerStyle}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Q\+C\+P\+Item\+Tracer\+::\+Tracer\+Style}}}

The different visual appearances a tracer item can have. Some styles size may be controlled with \mbox{\hyperlink{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}{set\+Size}}.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}{set\+Style}} 
\end{DoxySeeAlso}
\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{ts\+None@{ts\+None}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+None@{ts\+None}}}\mbox{\Hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}} 
ts\+None&The tracer is not visible. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ts\+Plus@{ts\+Plus}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Plus@{ts\+Plus}}}\mbox{\Hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a3323fb04017146e4885e080a459472fa}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a3323fb04017146e4885e080a459472fa}} 
ts\+Plus&A plus shaped crosshair with limited size. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ts\+Crosshair@{ts\+Crosshair}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Crosshair@{ts\+Crosshair}}}\mbox{\Hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}} 
ts\+Crosshair&A plus shaped crosshair which spans the complete axis rect. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ts\+Circle@{ts\+Circle}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Circle@{ts\+Circle}}}\mbox{\Hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500ae2252c28f4842880d71e9f94e69de94e}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500ae2252c28f4842880d71e9f94e69de94e}} 
ts\+Circle&A circle. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ts\+Square@{ts\+Square}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!ts\+Square@{ts\+Square}}}\mbox{\Hypertarget{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}\label{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}} 
ts\+Square&A square. \\
\hline

\end{DoxyEnumFields}


\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_q_c_p_item_tracer_adc5ca846eeac323db4aa1fc4081e36be}\label{class_q_c_p_item_tracer_adc5ca846eeac323db4aa1fc4081e36be}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{Q\+C\+P\+Item\+Tracer()}{QCPItemTracer()}}
{\footnotesize\ttfamily Q\+C\+P\+Item\+Tracer\+::\+Q\+C\+P\+Item\+Tracer (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_q_custom_plot}{Q\+Custom\+Plot}} $\ast$}]{parent\+Plot }\end{DoxyParamCaption})}

Creates a tracer item and sets default values.

The constructed item can be added to the plot with \mbox{\hyperlink{class_q_custom_plot_aa500620379262321685cb7a7674cbd2a}{Q\+Custom\+Plot\+::add\+Item}}. 

\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_q_c_p_item_tracer_ae1dc728384936184e7552a6d0d67fd75}\label{class_q_c_p_item_tracer_ae1dc728384936184e7552a6d0d67fd75}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!select\+Test@{select\+Test}}
\index{select\+Test@{select\+Test}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{select\+Test()}{selectTest()}}
{\footnotesize\ttfamily double Q\+C\+P\+Item\+Tracer\+::select\+Test (\begin{DoxyParamCaption}\item[{const Q\+PointF \&}]{pos,  }\item[{bool}]{only\+Selectable,  }\item[{Q\+Variant $\ast$}]{details = {\ttfamily 0} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}

This function is used to decide whether a click hits a layerable object or not.

{\itshape pos} is a point in pixel coordinates on the \mbox{\hyperlink{class_q_custom_plot}{Q\+Custom\+Plot}} surface. This function returns the shortest pixel distance of this point to the object. If the object is either invisible or the distance couldn\textquotesingle{}t be determined, -\/1.\+0 is returned. Further, if {\itshape only\+Selectable} is true and the object is not selectable, -\/1.\+0 is returned, too.

If the object is represented not by single lines but by an area like a \mbox{\hyperlink{class_q_c_p_item_text}{Q\+C\+P\+Item\+Text}} or the bars of a \mbox{\hyperlink{class_q_c_p_bars}{Q\+C\+P\+Bars}} plottable, a click inside the area should also be considered a hit. In these cases this function thus returns a constant value greater zero but still below the parent plot\textquotesingle{}s selection tolerance. (typically the selection\+Tolerance multiplied by 0.\+99).

Providing a constant value for area objects allows selecting line objects even when they are obscured by such area objects, by clicking close to the lines (i.\+e. closer than 0.\+99$\ast$selection\+Tolerance).

The actual setting of the selection state is not done by this function. This is handled by the parent \mbox{\hyperlink{class_q_custom_plot}{Q\+Custom\+Plot}} when the mouse\+Release\+Event occurs, and the finally selected object is notified via the select\+Event/deselect\+Event methods.

{\itshape details} is an optional output parameter. Every layerable subclass may place any information in {\itshape details}. This information will be passed to select\+Event when the parent \mbox{\hyperlink{class_q_custom_plot}{Q\+Custom\+Plot}} decides on the basis of this select\+Test call, that the object was successfully selected. The subsequent call to select\+Event will carry the {\itshape details}. This is useful for multi-\/part objects (like \mbox{\hyperlink{class_q_c_p_axis}{Q\+C\+P\+Axis}}). This way, a possibly complex calculation to decide which part was clicked is only done once in \mbox{\hyperlink{class_q_c_p_item_tracer_ae1dc728384936184e7552a6d0d67fd75}{select\+Test}}. The result (i.\+e. the actually clicked part) can then be placed in {\itshape details}. So in the subsequent select\+Event, the decision which part was selected doesn\textquotesingle{}t have to be done a second time for a single selection operation.

You may pass 0 as {\itshape details} to indicate that you are not interested in those selection details.

\begin{DoxySeeAlso}{See also}
select\+Event, deselect\+Event, \mbox{\hyperlink{class_q_custom_plot_a5ee1e2f6ae27419deca53e75907c27e5}{Q\+Custom\+Plot\+::set\+Interactions}} 
\end{DoxySeeAlso}


Implements \mbox{\hyperlink{class_q_c_p_abstract_item_a96d522d10ffc0413b9a366c6f7f0476b}{Q\+C\+P\+Abstract\+Item}}.

\mbox{\Hypertarget{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}\label{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Brush@{set\+Brush}}
\index{set\+Brush@{set\+Brush}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Brush()}{setBrush()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Brush (\begin{DoxyParamCaption}\item[{const Q\+Brush \&}]{brush }\end{DoxyParamCaption})}

Sets the brush that will be used to draw any fills of the tracer

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}{set\+Selected\+Brush}}, \mbox{\hyperlink{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{set\+Pen}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}\label{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Graph@{set\+Graph}}
\index{set\+Graph@{set\+Graph}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Graph()}{setGraph()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Graph (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} $\ast$}]{graph }\end{DoxyParamCaption})}

Sets the \mbox{\hyperlink{class_q_c_p_graph}{Q\+C\+P\+Graph}} this tracer sticks to. The tracer {\itshape position} will be set to type \mbox{\hyperlink{class_q_c_p_item_position_aad9936c22bf43e3d358552f6e86dbdc8ad5ffb8dc99ad73263f7010c77342294c}{Q\+C\+P\+Item\+Position\+::pt\+Plot\+Coords}} and the axes will be set to the axes of {\itshape graph}.

To free the tracer from any graph, set {\itshape graph} to 0. The tracer {\itshape position} can then be placed freely like any other item position. This is the state the tracer will assume when its graph gets deleted while still attached to it.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}\label{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Graph\+Key@{set\+Graph\+Key}}
\index{set\+Graph\+Key@{set\+Graph\+Key}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Graph\+Key()}{setGraphKey()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Graph\+Key (\begin{DoxyParamCaption}\item[{double}]{key }\end{DoxyParamCaption})}

Sets the key of the graph\textquotesingle{}s data point the tracer will be positioned at. This is the only free coordinate of a tracer when attached to a graph.

Depending on \mbox{\hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating}}, the tracer will be either positioned on the data point closest to {\itshape key}, or will stay exactly at {\itshape key} and interpolate the value linearly.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}}, \mbox{\hyperlink{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}{set\+Interpolating}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}\label{class_q_c_p_item_tracer_a6c244a9d1175bef12b50afafd4f5fcd2}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Interpolating@{set\+Interpolating}}
\index{set\+Interpolating@{set\+Interpolating}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Interpolating()}{setInterpolating()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Interpolating (\begin{DoxyParamCaption}\item[{bool}]{enabled }\end{DoxyParamCaption})}

Sets whether the value of the graph\textquotesingle{}s data points shall be interpolated, when positioning the tracer.

If {\itshape enabled} is set to false and a key is given with \mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}}, the tracer is placed on the data point of the graph which is closest to the key, but which is not necessarily exactly there. If {\itshape enabled} is true, the tracer will be positioned exactly at the specified key, and the appropriate value will be interpolated from the graph\textquotesingle{}s data points linearly.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}}, \mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}\label{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Pen@{set\+Pen}}
\index{set\+Pen@{set\+Pen}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Pen()}{setPen()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Pen (\begin{DoxyParamCaption}\item[{const Q\+Pen \&}]{pen }\end{DoxyParamCaption})}

Sets the pen that will be used to draw the line of the tracer

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}{set\+Selected\+Pen}}, \mbox{\hyperlink{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{set\+Brush}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}\label{class_q_c_p_item_tracer_a0f55c084980a7a312af859d3e7b558ef}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Selected\+Brush@{set\+Selected\+Brush}}
\index{set\+Selected\+Brush@{set\+Selected\+Brush}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Selected\+Brush()}{setSelectedBrush()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Selected\+Brush (\begin{DoxyParamCaption}\item[{const Q\+Brush \&}]{brush }\end{DoxyParamCaption})}

Sets the brush that will be used to draw any fills of the tracer, when selected.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_a2c303f7470a30084daa201ed556b3c36}{set\+Brush}}, \mbox{\hyperlink{class_q_c_p_abstract_item_a203de94ad586cc44d16c9565f49d3378}{set\+Selected}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}\label{class_q_c_p_item_tracer_ae1bf70db7f13f928660168cd3e5069f3}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Selected\+Pen@{set\+Selected\+Pen}}
\index{set\+Selected\+Pen@{set\+Selected\+Pen}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Selected\+Pen()}{setSelectedPen()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Selected\+Pen (\begin{DoxyParamCaption}\item[{const Q\+Pen \&}]{pen }\end{DoxyParamCaption})}

Sets the pen that will be used to draw the line of the tracer when selected

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{class_q_c_p_item_tracer_af8048636fc1ef0152e51809b008df2ca}{set\+Pen}}, \mbox{\hyperlink{class_q_c_p_abstract_item_a203de94ad586cc44d16c9565f49d3378}{set\+Selected}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}\label{class_q_c_p_item_tracer_ae47fe0617f5fef5fdb766999569be10a}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Size@{set\+Size}}
\index{set\+Size@{set\+Size}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Size()}{setSize()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Size (\begin{DoxyParamCaption}\item[{double}]{size }\end{DoxyParamCaption})}

Sets the size of the tracer in pixels, if the style supports setting a size (e.\+g. \mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500a4ed5f01f2c5fd86d980366d79f481b9b}{ts\+Square}} does, \mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500af562ec81ac3ba99e26ef8540cf1ec16f}{ts\+Crosshair}} does not). \mbox{\Hypertarget{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}\label{class_q_c_p_item_tracer_a41a2ac4f1acd7897b4e2a2579c03204e}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!set\+Style@{set\+Style}}
\index{set\+Style@{set\+Style}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{set\+Style()}{setStyle()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::set\+Style (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500}{Q\+C\+P\+Item\+Tracer\+::\+Tracer\+Style}}}]{style }\end{DoxyParamCaption})}

Sets the style/visual appearance of the tracer.

If you only want to use the tracer {\itshape position} as an anchor for other items, set {\itshape style} to \mbox{\hyperlink{class_q_c_p_item_tracer_a2f05ddb13978036f902ca3ab47076500aac27462c79146225bfa8fba24d2ee8a4}{ts\+None}}. \mbox{\Hypertarget{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}\label{class_q_c_p_item_tracer_a5b90296109e36384aedbc8908a670413}} 
\index{Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}!update\+Position@{update\+Position}}
\index{update\+Position@{update\+Position}!Q\+C\+P\+Item\+Tracer@{Q\+C\+P\+Item\+Tracer}}
\subsubsection{\texorpdfstring{update\+Position()}{updatePosition()}}
{\footnotesize\ttfamily void Q\+C\+P\+Item\+Tracer\+::update\+Position (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

If the tracer is connected with a graph (\mbox{\hyperlink{class_q_c_p_item_tracer_af5886f4ded8dd68cb4f3388f390790c0}{set\+Graph}}), this function updates the tracer\textquotesingle{}s {\itshape position} to reside on the graph data, depending on the configured key (\mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}}).

It is called automatically on every redraw and normally doesn\textquotesingle{}t need to be called manually. One exception is when you want to read the tracer coordinates via {\itshape position} and are not sure that the graph\textquotesingle{}s data (or the tracer key with \mbox{\hyperlink{class_q_c_p_item_tracer_a6840143b42f3b685cedf7c6d83a704c8}{set\+Graph\+Key}}) hasn\textquotesingle{}t changed since the last redraw. In that situation, call this function before accessing {\itshape position}, to make sure you don\textquotesingle{}t get out-\/of-\/date coordinates.

If there is no graph set on this tracer, this function does nothing. 

The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
R\+:/\+Develop/a0-\/develop/\+Lib\+Q\+Qt/src/charts/qcustomplot/\mbox{\hyperlink{qcustomplot_8h}{qcustomplot.\+h}}\item 
R\+:/\+Develop/a0-\/develop/\+Lib\+Q\+Qt/src/charts/qcustomplot/\mbox{\hyperlink{qcustomplot_8cpp}{qcustomplot.\+cpp}}\end{DoxyCompactItemize}
